Cases and Deaths by Year
df$Year <- lubridate::year(df$date)
df$Year <- as.factor(df$Year)
ggplot(df) + geom_col(aes(x=Year,y=new_cases)) +
labs(title = "Covid-19 Cases By Year") +
scale_y_continuous(labels = comma)
## Warning: Removed 2 rows containing missing values (position_stack).

ggplot(df) + geom_col(aes(x=Year,y=new_deaths)) +
labs(title = "Covid-19 Deaths By Year") +
scale_y_continuous(labels = comma)
## Warning: Removed 5 rows containing missing values (position_stack).

Plot of Daily new_cases and new_deaths
daily_new_cases <-ggplot(US) +
labs(title="COVID-19 Cases by Date",y="Cases") +
geom_line(aes(x=date,y=MAC,col="Mov Average"))
ggplotly(daily_new_cases)
## Don't know how to automatically pick scale for object of type ts. Defaulting to continuous.
daily_new_deaths <-ggplot(US) +
labs(title="COVID-19 Deaths by Date",col="Deaths",y="Deaths") + ylim(0,1000) +
geom_line(aes(x=date,y=MAD,col="Mov. Average"))
ggplotly(daily_new_deaths)
# USA <- subset(US,date >="2020-06-01")
# ggplot(USA) + # geom_line(aes(x=date,y=new_cases,col="Daily new_cases")) +
# labs(title="COVID-19 Cases by Date since Jun. 1, 2020",
# subtitle = "(7 day rollingmean)") +
# geom_line(aes(x=date,y=MAC,col="Rolling Mean")) +
# scale_alpha_date()
#
# ggplot(USA) + # geom_line(aes(x=date,y=new_deaths,col="Daily new_deaths")) +
# labs(title="COVID-19 Deaths by Date (since Jun. 1, 2020)") + ylim(0,200) +
# geom_line(aes(x=date,y=MAD,col="Loess")) +
# scale_alpha_date()
Non-Moving Average By Week and By Month
US$Monthly <- as.Date(cut(US$date,
breaks = "month"))
US$Weekly <- as.Date(cut(US$date,
breaks = "week",
start.on.monday = FALSE))
Weekly_new_cases <- aggregate(new_cases~Weekly,US,FUN=sum)
Weekly_new_deaths <- aggregate(new_deaths~Weekly,US,FUN=sum)
Weekly_new_cases$DRate <- Weekly_new_deaths$new_deaths/Weekly_new_cases$new_cases
## Warning in Weekly_new_deaths$new_deaths/Weekly_new_cases$new_cases: longer
## object length is not a multiple of shorter object length
Weekly_new_cases$LivedSaved <- Weekly_new_cases$new_cases * (max(Weekly_new_cases$DRate) - Weekly_new_cases$DRate)
ggplot(Weekly_new_cases) + geom_col(aes(x=Weekly,y=new_cases)) +
labs(title="Weekly Cases ",x="Date date", y="Weekly new_cases") +
scale_alpha_date()

ggplot(Weekly_new_deaths) + geom_col(aes(x=Weekly,y=new_deaths)) +
labs(title="Weekly Deaths",x="Date date", y="Weekly new_deaths") +
ylim(0,6000) + scale_alpha_date()

Monthly new_cases and new_deaths
Monthly_new_cases <- aggregate(new_cases~Monthly,US,FUN=sum)
Monthly_new_deaths <- aggregate(new_deaths~Monthly,US,FUN=sum)
Monthly_new_cases$DRate <- Monthly_new_deaths$new_deaths/Monthly_new_cases$new_cases
Monthly_new_cases$LivedSaved <- Monthly_new_cases$new_cases * (max(Monthly_new_cases$DRate) - Monthly_new_cases$DRate) * 100
ggplot(Monthly_new_cases) + geom_col(aes(x=Monthly,y=new_cases)) +
labs(title="Monthly Cases") +
scale_y_continuous(labels=scales::comma) +
scale_alpha_date()

ggplot(Monthly_new_deaths) + geom_col(aes(x=Monthly,y=new_deaths)) +
labs(title="Monthly Deaths") +
scale_alpha_date()
